/*
 * GeometricRestartsManager.cuh
 *
 *  Created on: Feb 27, 2014
 *      Author: jaime
 */

#ifndef GEOMETRICRESTARTSMANAGER_CUH_
#define GEOMETRICRESTARTSMANAGER_CUH_
#include "RestartsManager.cuh"
#include <stdio.h>

class GeometricRestartsManager : RestartsManager{
private:
	int conflicts_until_restart;
	int current_conflicts_number;
	float increase_factor;
	void handle_restart();
public:
	__device__ GeometricRestartsManager(int initial_conflicts_until_restart, float increase_factor);
	__device__ void signal_conflict();
	//__device__ ~GeometricRestartManager(){}
	__device__ bool should_restart();
};

#endif /* GEOMETRICRESTARTSMANAGER_CUH_ */
